// 币币兑换接口

import { postRequest, getRequest } from "@/utils/request";

/**
 * 币币兑换下单
 * @param {*} data.from_coin_name
 * @param {*} data.to_coin_name
 * @param {*} data.quantity
 * @returns
 */
export const postSwapMarketApi = (data) => {
  return postRequest("/api/swap/market/swap", data);
};

/**
 * 获取订单记录
 * @param {*} query.page
 * @param {*} query.status  状态：pending待处理，complete已完成，cancel已取消
 */
export const getSwapOrderPagesApi = (query) => {
  return getRequest("/api/swap/market/orders", query);
};

/**
 * 订单详情
 * @param {*} query.order_no  订单号
 * @returns
 */
export const getSwapOrderDetailApi = (query) => {
  return getRequest("/api/swap/market/order/detail", query);
};

/**
 * 发布委托订单（创建挂单）
 * @param {*} data.coin_name   币种名称
 * @param {*} data.quantity   数量
 * @param {*} data.min_quantity   最小数量
 * @param {*} data.max_quantity   最大数量
 * @param {*} data.fee_ratio   手续费率（数字）
 * @returns
 */
export const postSwapPublishApi = (data) => {
  return postRequest("/api/swap/market/publish", data);
};

/**
 * 查询委托记录（挂单记录）
 * @param {*} query.page
 * @returns
 */
export const getSwapMarketPagesApi = (query) => {
  return getRequest("/api/swap/market/records", query);
};

/**
 * 设置挂单状态
 * @param {*} data.status      状态：0正常，1暂停，2已取消
 * @param {*} data.record_id    记录ID
 * @returns
 */
export const postSwapMarketSetApi = (data) => {
  return postRequest("/api/swap/market/set", data);
};
/**
 * 操作订单（接收，确认，取消，拒绝）
 * @param {} data.type      订单操作类型（accept：接受；cancel：取消；confirm：确认；refuse：拒绝）
 * @param {} data.order_no  订单号
 * @returns
 */
export const postSwapOrderOperationApi = (data) => {
  return postRequest(`/api/swap/market/order/${data.type}`, {
    order_no: data.order_no,
  });
};

/**
 * 兑换交易对
 * @param {} query.name    交易对名称(可选)
 */
export const getSwapSymbolsApi = (query) => {
  return getRequest("/api/swap/market/symbols", query);
};

/**
 * 发布委托单币种
 */
export const getSwapCoinsApi = () => {
  return getRequest("/api/swap/market/coin");
};

/**
 * 挂单详情
 * @param {*} query.record_id
 */
export const getSwapMarketDetailApi = (query) => {
  return getRequest("/api/swap/market/publish/detail", query);
};
